小松鼠的演算法樂園
演算法題目解析
239
免費公開
1
付費限定
房間資訊
由有業界實戰經驗的演算法工程師, 手把手教你建立解題的框架, 一步步寫出高效、清晰易懂的解題答案。 著重在讓讀者啟發思考、理解演算法,熟悉常見的演算法模板。 深入淺出地介紹題目背後所使用的演算法意義,融會貫通演算法與資料結構的應用。 在幾個經典的題目融入一道題目的多種解法,或者同一招解不同的題目,擴展廣度,並加深印象。
全部
DP動態規劃深入淺出
圖論 Graph 相關演算法與題目解析
DFS 深度優先演算法 與 題目解析
BFS 廣度優先演算法 與 題目解析
二分搜尋法 相關題目與演算法解析
BST 二元搜索樹 相關題目與演算法解析
前綴和 相關應用解析
鏈結串列 相關題目與演算法解析
遊戲互動模擬題 相關演算法
SQL 資料庫語法 (以MySQL為主)
全部
DP動態規劃深入淺出
圖論 Graph 相關演算法與題目解析
DFS 深度優先演算法 與 題目解析
BFS 廣度優先演算法 與 題目解析
二分搜尋法 相關題目與演算法解析
BST 二元搜索樹 相關題目與演算法解析
前綴和 相關應用解析
鏈結串列 相關題目與演算法解析
遊戲互動模擬題 相關演算法
SQL 資料庫語法 (以MySQL為主)
全部類型
免費與付費
最新發佈
最新發佈
小松鼠
2024/09/26
📆行程安排 我的行事曆I_My Calendar I_Leetcode #729
Leetcode 729. My Calendar I 給定一個行事曆的class定義和行程安排的介面interface。 請完成下列function 1.建構子MyCalendar() 初始化MyCalendar物件 2.boolean book(int start, int end) 插入新行程
#
leetcode
#
python
#
algorithm
10
7
小松鼠
2024/09/26
📆行程安排 我的行事曆I_My Calendar I_Leetcode #729
Leetcode 729. My Calendar I 給定一個行事曆的class定義和行程安排的介面interface。 請完成下列function 1.建構子MyCalendar() 初始化MyCalendar物件 2.boolean book(int start, int end) 插入新行程
#
leetcode
#
python
#
algorithm
10
7
小松鼠
2024/09/10
🏅環環相扣 插入GCD到鏈結串列中_Insert GCD in Linked List_Leetcode #2807
Insert Greatest Common Divisors in Linked List 題目給定一個鏈結串列, 請在兩兩節點之間加入一個新節點,新節點的值為兩者之間的最大公因數。 最後返回新串列的head node作為答案。
#
python
#
leetcode
#
algorithm
10
3
小松鼠
2024/09/10
🏅環環相扣 插入GCD到鏈結串列中_Insert GCD in Linked List_Leetcode #2807
Insert Greatest Common Divisors in Linked List 題目給定一個鏈結串列, 請在兩兩節點之間加入一個新節點,新節點的值為兩者之間的最大公因數。 最後返回新串列的head node作為答案。
#
python
#
leetcode
#
algorithm
10
3
小松鼠
2024/09/02
🎄圖論應用: 二元樹的中序拜訪 Binary Tree Inorder Traversal_LC #94
Binary Tree Inorder Traversal 題目給定一個二元樹的根結點。 請輸出中序拜訪(In-order traversal)的拜訪序列。 中序拜訪的定義: 1.拜訪左子樹。 2.拜訪目前的節點。 3.拜訪右子樹。
#
python
#
leetcode
#
algorithm
13
2
小松鼠
2024/09/02
🎄圖論應用: 二元樹的中序拜訪 Binary Tree Inorder Traversal_LC #94
Binary Tree Inorder Traversal 題目給定一個二元樹的根結點。 請輸出中序拜訪(In-order traversal)的拜訪序列。 中序拜訪的定義: 1.拜訪左子樹。 2.拜訪目前的節點。 3.拜訪右子樹。
#
python
#
leetcode
#
algorithm
13
2
小松鼠
2024/08/28
⛳圖論應用: 計算子島嶼的數量 Count Sub Islands_Leetcode #1905
給定兩個相同大小的二維陣列grid1, grid2。 格子點為0的地方代表海洋,格子點為1的地方代表陸地。 島嶼的定義是4連通(上、下、左、右)相鄰在一起的陸地。 如果有某個區域在grid2 是島嶼而且在grid1也是陸地, 那麼這些區域就稱為「子島嶼」。 請問grid2裡有多少座子島嶼?
#
python
#
leetcode
#
algorithm
8
小松鼠
2024/08/28
⛳圖論應用: 計算子島嶼的數量 Count Sub Islands_Leetcode #1905
給定兩個相同大小的二維陣列grid1, grid2。 格子點為0的地方代表海洋,格子點為1的地方代表陸地。 島嶼的定義是4連通(上、下、左、右)相鄰在一起的陸地。 如果有某個區域在grid2 是島嶼而且在grid1也是陸地, 那麼這些區域就稱為「子島嶼」。 請問grid2裡有多少座子島嶼?
#
python
#
leetcode
#
algorithm
8
小松鼠
2024/08/26
🎄圖論應用: 樹的後序拜訪 N-ary Tree Postorder Traversal_Leetcode #590
題目敘述 N-ary Tree Postorder Traversal 題目給定一個n-ary(每個節點最多n個子樹)的樹根。 請返回後序拜訪這棵樹的軌跡。 推廣後的後序拜訪的定義: 1.從左到右依序拜訪所有子樹。 2.拜訪目前的節點。
#
python
#
leetcode
#
algorithm
7
3
小松鼠
2024/08/26
🎄圖論應用: 樹的後序拜訪 N-ary Tree Postorder Traversal_Leetcode #590
題目敘述 N-ary Tree Postorder Traversal 題目給定一個n-ary(每個節點最多n個子樹)的樹根。 請返回後序拜訪這棵樹的軌跡。 推廣後的後序拜訪的定義: 1.從左到右依序拜訪所有子樹。 2.拜訪目前的節點。
#
python
#
leetcode
#
algorithm
7
3
小松鼠
2024/08/25
🎄圖論應用: 二元樹的後序拜訪 Binary Tree Postorder Traversal_LC #145
題目敘述 145. Binary Tree Postorder Traversal 題目給定一個二元樹的根結點。 請輸出後序拜訪(Post-order traversal)的拜訪序列。 後序拜訪的定義: 1.拜訪左子樹。 2.拜訪右子樹。 3.拜訪目前的節點。
#
python
#
leetcode
#
algorithm
9
7
小松鼠
2024/08/25
🎄圖論應用: 二元樹的後序拜訪 Binary Tree Postorder Traversal_LC #145
題目敘述 145. Binary Tree Postorder Traversal 題目給定一個二元樹的根結點。 請輸出後序拜訪(Post-order traversal)的拜訪序列。 後序拜訪的定義: 1.拜訪左子樹。 2.拜訪右子樹。 3.拜訪目前的節點。
#
python
#
leetcode
#
algorithm
9
7
小松鼠
2024/08/07
遞迴應用: 把 數字 轉成 英文表示法 Integer to English Words_Leetcode #273
題目敘述 Integer to English Words 給定一個整數num 請轉換成對應的的英文數字表達(One, Two, Three, ... 那種數字表達式)
#
python
#
leetcode
#
algorithm
10
1
小松鼠
2024/08/07
遞迴應用: 把 數字 轉成 英文表示法 Integer to English Words_Leetcode #273
題目敘述 Integer to English Words 給定一個整數num 請轉換成對應的的英文數字表達(One, Two, Three, ... 那種數字表達式)
#
python
#
leetcode
#
algorithm
10
1
小松鼠
2024/07/04
串列應用: 合併非零的節點 Merge Nodes in Between Zeros_Leetcode #2181
題目敘述 Merge Nodes in Between Zeros 給定一個鏈結串列,合併非零區間的節點(以加總的方式合併),輸出合併後的鏈結串列。
#
python
#
leetcode
#
algorithm
15
小松鼠
2024/07/04
串列應用: 合併非零的節點 Merge Nodes in Between Zeros_Leetcode #2181
題目敘述 Merge Nodes in Between Zeros 給定一個鏈結串列,合併非零區間的節點(以加總的方式合併),輸出合併後的鏈結串列。
#
python
#
leetcode
#
algorithm
15
小松鼠
2024/06/29
圖論:找出每個節點的祖先 All Ancestors of a Node in a DAG_Leetcode #2192
題目敘述 All Ancestors of a Node in a Directed Acyclic Graph 給定一個有向無環圖,請找出每個點的祖先,以陣列的形式返回答案。
#
python
#
leetcode
#
algorithm
15
3
小松鼠
2024/06/29
圖論:找出每個節點的祖先 All Ancestors of a Node in a DAG_Leetcode #2192
題目敘述 All Ancestors of a Node in a Directed Acyclic Graph 給定一個有向無環圖,請找出每個點的祖先,以陣列的形式返回答案。
#
python
#
leetcode
#
algorithm
15
3
小松鼠
2024/05/24
拼字遊戲 拼出最高分的單字組合 (DFS回溯法應用) Leetcode #1255
知道如何從一組給定的英文字母和單字庫中的單字拼出最高分的單字組合。使用DFS + 回溯法 + 剪枝優化的演算法,詳細分析瞭如何展開所有可能的路徑,並且找出符合條件的狀態,協助讀者理解演算法背後的思維和方法。
#
leetcode
#
python
#
algorithm
9
5
小松鼠
2024/05/24
拼字遊戲 拼出最高分的單字組合 (DFS回溯法應用) Leetcode #1255
知道如何從一組給定的英文字母和單字庫中的單字拼出最高分的單字組合。使用DFS + 回溯法 + 剪枝優化的演算法,詳細分析瞭如何展開所有可能的路徑,並且找出符合條件的狀態,協助讀者理解演算法背後的思維和方法。
#
leetcode
#
python
#
algorithm
9
5
小松鼠
2024/05/19
人人有獎 在二元樹中分配硬幣(圖論應用) Leetcode #979
題目敘述 題目給定一棵二元樹,整棵樹剛好有n個節點 和 總共n枚金幣。 每個節點的值代表該節點初始擁有金幣的數量。 每回合可以給周圍的節點一枚金幣,請問最少需要幾回合才能讓所有節點恰好擁有一枚金幣? 原本的英文題目敘述
#
python
#
leetcode
#
algorithm
12
3
小松鼠
2024/05/19
人人有獎 在二元樹中分配硬幣(圖論應用) Leetcode #979
題目敘述 題目給定一棵二元樹,整棵樹剛好有n個節點 和 總共n枚金幣。 每個節點的值代表該節點初始擁有金幣的數量。 每回合可以給周圍的節點一枚金幣,請問最少需要幾回合才能讓所有節點恰好擁有一枚金幣? 原本的英文題目敘述
#
python
#
leetcode
#
algorithm
12
3
小松鼠
2024/05/17
微計算機 布林代數的二元樹_Leetcode #2331
題目給定一個布林代數的二元樹,要求我們計算最後的結果。 葉子節點都是真假值 非葉子節點都是布林運算子
#
python
#
algorithm
#
leetcode
13
5
小松鼠
2024/05/17
微計算機 布林代數的二元樹_Leetcode #2331
題目給定一個布林代數的二元樹,要求我們計算最後的結果。 葉子節點都是真假值 非葉子節點都是布林運算子
#
python
#
algorithm
#
leetcode
13
5
小松鼠
2024/05/14
尋寶之旅 挖掘最多金礦的走法 (DFS+最佳化)Leetcode #1219
這篇文章討論了從二維整數陣列中挖掘金礦的問題。文章使用DFS模擬N4走法來解決問題,並提供了時間複雜度和空間複雜度的分析。這將有助於瞭解如何從地圖中挖取最多金礦。文章中提到了相關的關鍵知識點和參考資料。
#
python
#
leetcode
#
algorithm
17
1
小松鼠
2024/05/14
尋寶之旅 挖掘最多金礦的走法 (DFS+最佳化)Leetcode #1219
這篇文章討論了從二維整數陣列中挖掘金礦的問題。文章使用DFS模擬N4走法來解決問題,並提供了時間複雜度和空間複雜度的分析。這將有助於瞭解如何從地圖中挖取最多金礦。文章中提到了相關的關鍵知識點和參考資料。
#
python
#
leetcode
#
algorithm
17
1
小松鼠
2024/05/06
嵌套娃娃 用遞迴解 串列化簡題 Leetcode #2487
題目敘述 輸入給定一個鏈結串列的head node。 要求我們進行化簡,只要某個節點的右手邊存在比較大的節點,就刪除掉。 例如 5->2->13->3 5的右手邊有13,所以5刪除掉。 2的右手邊有13,所以2刪除掉。 13的右手邊沒有更大的節點,所以13留著。 3的右手邊沒有更大
#
python
#
leetcode
#
algorithm
12
小松鼠
2024/05/06
嵌套娃娃 用遞迴解 串列化簡題 Leetcode #2487
題目敘述 輸入給定一個鏈結串列的head node。 要求我們進行化簡,只要某個節點的右手邊存在比較大的節點,就刪除掉。 例如 5->2->13->3 5的右手邊有13,所以5刪除掉。 2的右手邊有13,所以2刪除掉。 13的右手邊沒有更大的節點,所以13留著。 3的右手邊沒有更大
#
python
#
leetcode
#
algorithm
12
小松鼠
2024/04/22
一魚多吃: 從不同方法確認 兩點之間的路徑存在與否
今天的一魚三吃系列是透過 兩點之間是否存在一條路徑的題目,來回顧以前學過的DFS、BFS和Disjoint Set,鞏固圖論演算法的知識點。 英文的題目敘述在這裡 題目敘述 給定我們已知n個節點的圖,和圖上的每一條無向邊edges。 請問給定的起點start和終點end是否存在一條路徑可
#
python
#
leetcode
#
algorithm
9
小松鼠
2024/04/22
一魚多吃: 從不同方法確認 兩點之間的路徑存在與否
今天的一魚三吃系列是透過 兩點之間是否存在一條路徑的題目,來回顧以前學過的DFS、BFS和Disjoint Set,鞏固圖論演算法的知識點。 英文的題目敘述在這裡 題目敘述 給定我們已知n個節點的圖,和圖上的每一條無向邊edges。 請問給定的起點start和終點end是否存在一條路徑可
#
python
#
leetcode
#
algorithm
9
小松鼠
2024/04/19
一魚多吃: 從 島嶼周長 理解 圖論演算法的本質
今天的官方每日一題是Island Perimeter島嶼周長,很有趣的一題。 題目非常直觀好懂。也很適合拿來作為多角度複習、回顧圖論演算法的好題目。 英文的題目敘述在這裡 題目敘述 題目會給我們一個二維陣列當作地圖,格子點為1代表陸地,格子點為0代表海洋。 要求我們以四連通N4的方式拜訪
#
python
#
leetcode
#
algorithm
11
小松鼠
2024/04/19
一魚多吃: 從 島嶼周長 理解 圖論演算法的本質
今天的官方每日一題是Island Perimeter島嶼周長,很有趣的一題。 題目非常直觀好懂。也很適合拿來作為多角度複習、回顧圖論演算法的好題目。 英文的題目敘述在這裡 題目敘述 題目會給我們一個二維陣列當作地圖,格子點為1代表陸地,格子點為0代表海洋。 要求我們以四連通N4的方式拜訪
#
python
#
leetcode
#
algorithm
11
小松鼠
2024/04/16
DFS應用: 在二元樹插入新的一層 Add one row to Tree_Leetcode #623
題目敘述 題目會給定一顆二元樹的根結點, 要求我們在指定的層樹d,插入新的一層,節點值為v。 原本的左、右子樹,就成為新的那一層的左子樹、右子樹。 題目的原文敘述 測試範例 Example 1: Input: root = [4,2,6,3,1,5], val = 1, depth =
#
leetcode
#
python
#
algorithm
10
4
小松鼠
2024/04/16
DFS應用: 在二元樹插入新的一層 Add one row to Tree_Leetcode #623
題目敘述 題目會給定一顆二元樹的根結點, 要求我們在指定的層樹d,插入新的一層,節點值為v。 原本的左、右子樹,就成為新的那一層的左子樹、右子樹。 題目的原文敘述 測試範例 Example 1: Input: root = [4,2,6,3,1,5], val = 1, depth =
#
leetcode
#
python
#
algorithm
10
4
小松鼠
2024/04/04
合縱連橫: 從 路徑搜索 理解DFS背後的本質
這篇文章,會帶著大家複習以前學過的DFS框架, 並且以圖論的應用題與概念為核心, 貫穿一些相關聯的題目,透過框架複現來幫助讀者理解這個演算法框架。 DFS 深度優先搜索框架 def dfs( parameter ): # 邊界條件 if base case or stop cond
#
python
#
leetcode
#
algorithm
6
2
小松鼠
2024/04/04
合縱連橫: 從 路徑搜索 理解DFS背後的本質
這篇文章,會帶著大家複習以前學過的DFS框架, 並且以圖論的應用題與概念為核心, 貫穿一些相關聯的題目,透過框架複現來幫助讀者理解這個演算法框架。 DFS 深度優先搜索框架 def dfs( parameter ): # 邊界條件 if base case or stop cond
#
python
#
leetcode
#
algorithm
6
2
小松鼠
2024/02/28
圖論應用: 找出二元樹最後一層最左邊的值 Bottom Left Tree Value_Leetcode #513
題目敘述 題目會給定一棵二元樹的根結點,要求我們找出這棵二元樹最後一層最左邊的值。 題目的原文敘述 測試範例 Example 1: Input: root = [2,1,3] Output: 1 Example 2: Input: root = [1,2,3,4,null,5,6
#
python
#
leetcode
#
algorithm
7
小松鼠
2024/02/28
圖論應用: 找出二元樹最後一層最左邊的值 Bottom Left Tree Value_Leetcode #513
題目敘述 題目會給定一棵二元樹的根結點,要求我們找出這棵二元樹最後一層最左邊的值。 題目的原文敘述 測試範例 Example 1: Input: root = [2,1,3] Output: 1 Example 2: Input: root = [1,2,3,4,null,5,6
#
python
#
leetcode
#
algorithm
7
小松鼠
2024/01/29
圖論應用題: 樹的路徑總和 Path Sum_Leetcode #112
題目敘述 題目會給定一顆二元樹的根結點Root node,和指定的目標值targetSum。 問我們能不能從二元樹裡面找到一條從根結點到葉子結點的路徑,其路徑上的節點值總和恰好為targetSum? 可以的話,返回True。 無解的話,返回False。 題目的原文敘述 測試範例 E
#
python
#
leetcode
#
algorithm
6
小松鼠
2024/01/29
圖論應用題: 樹的路徑總和 Path Sum_Leetcode #112
題目敘述 題目會給定一顆二元樹的根結點Root node,和指定的目標值targetSum。 問我們能不能從二元樹裡面找到一條從根結點到葉子結點的路徑,其路徑上的節點值總和恰好為targetSum? 可以的話,返回True。 無解的話,返回False。 題目的原文敘述 測試範例 E
#
python
#
leetcode
#
algorithm
6
加入
全部
DP動態規劃深入淺出
圖論 Graph 相關演算法與題目解析
DFS 深度優先演算法 與 題目解析
BFS 廣度優先演算法 與 題目解析
二分搜尋法 相關題目與演算法解析
BST 二元搜索樹 相關題目與演算法解析
前綴和 相關應用解析
鏈結串列 相關題目與演算法解析
遊戲互動模擬題 相關演算法
SQL 資料庫語法 (以MySQL為主)
全部
DP動態規劃深入淺出
圖論 Graph 相關演算法與題目解析
DFS 深度優先演算法 與 題目解析
BFS 廣度優先演算法 與 題目解析
二分搜尋法 相關題目與演算法解析
BST 二元搜索樹 相關題目與演算法解析
前綴和 相關應用解析
鏈結串列 相關題目與演算法解析
遊戲互動模擬題 相關演算法
SQL 資料庫語法 (以MySQL為主)
全部類型
免費與付費
最新發佈
最新發佈
小松鼠
2024/09/26
📆行程安排 我的行事曆I_My Calendar I_Leetcode #729
Leetcode 729. My Calendar I 給定一個行事曆的class定義和行程安排的介面interface。 請完成下列function 1.建構子MyCalendar() 初始化MyCalendar物件 2.boolean book(int start, int end) 插入新行程
#
leetcode
#
python
#
algorithm
10
7
小松鼠
2024/09/26
📆行程安排 我的行事曆I_My Calendar I_Leetcode #729
Leetcode 729. My Calendar I 給定一個行事曆的class定義和行程安排的介面interface。 請完成下列function 1.建構子MyCalendar() 初始化MyCalendar物件 2.boolean book(int start, int end) 插入新行程
#
leetcode
#
python
#
algorithm
10
7
小松鼠
2024/09/10
🏅環環相扣 插入GCD到鏈結串列中_Insert GCD in Linked List_Leetcode #2807
Insert Greatest Common Divisors in Linked List 題目給定一個鏈結串列, 請在兩兩節點之間加入一個新節點,新節點的值為兩者之間的最大公因數。 最後返回新串列的head node作為答案。
#
python
#
leetcode
#
algorithm
10
3
小松鼠
2024/09/10
🏅環環相扣 插入GCD到鏈結串列中_Insert GCD in Linked List_Leetcode #2807
Insert Greatest Common Divisors in Linked List 題目給定一個鏈結串列, 請在兩兩節點之間加入一個新節點,新節點的值為兩者之間的最大公因數。 最後返回新串列的head node作為答案。
#
python
#
leetcode
#
algorithm
10
3
小松鼠
2024/09/02
🎄圖論應用: 二元樹的中序拜訪 Binary Tree Inorder Traversal_LC #94
Binary Tree Inorder Traversal 題目給定一個二元樹的根結點。 請輸出中序拜訪(In-order traversal)的拜訪序列。 中序拜訪的定義: 1.拜訪左子樹。 2.拜訪目前的節點。 3.拜訪右子樹。
#
python
#
leetcode
#
algorithm
13
2
小松鼠
2024/09/02
🎄圖論應用: 二元樹的中序拜訪 Binary Tree Inorder Traversal_LC #94
Binary Tree Inorder Traversal 題目給定一個二元樹的根結點。 請輸出中序拜訪(In-order traversal)的拜訪序列。 中序拜訪的定義: 1.拜訪左子樹。 2.拜訪目前的節點。 3.拜訪右子樹。
#
python
#
leetcode
#
algorithm
13
2
小松鼠
2024/08/28
⛳圖論應用: 計算子島嶼的數量 Count Sub Islands_Leetcode #1905
給定兩個相同大小的二維陣列grid1, grid2。 格子點為0的地方代表海洋,格子點為1的地方代表陸地。 島嶼的定義是4連通(上、下、左、右)相鄰在一起的陸地。 如果有某個區域在grid2 是島嶼而且在grid1也是陸地, 那麼這些區域就稱為「子島嶼」。 請問grid2裡有多少座子島嶼?
#
python
#
leetcode
#
algorithm
8
小松鼠
2024/08/28
⛳圖論應用: 計算子島嶼的數量 Count Sub Islands_Leetcode #1905
給定兩個相同大小的二維陣列grid1, grid2。 格子點為0的地方代表海洋,格子點為1的地方代表陸地。 島嶼的定義是4連通(上、下、左、右)相鄰在一起的陸地。 如果有某個區域在grid2 是島嶼而且在grid1也是陸地, 那麼這些區域就稱為「子島嶼」。 請問grid2裡有多少座子島嶼?
#
python
#
leetcode
#
algorithm
8
小松鼠
2024/08/26
🎄圖論應用: 樹的後序拜訪 N-ary Tree Postorder Traversal_Leetcode #590
題目敘述 N-ary Tree Postorder Traversal 題目給定一個n-ary(每個節點最多n個子樹)的樹根。 請返回後序拜訪這棵樹的軌跡。 推廣後的後序拜訪的定義: 1.從左到右依序拜訪所有子樹。 2.拜訪目前的節點。
#
python
#
leetcode
#
algorithm
7
3
小松鼠
2024/08/26
🎄圖論應用: 樹的後序拜訪 N-ary Tree Postorder Traversal_Leetcode #590
題目敘述 N-ary Tree Postorder Traversal 題目給定一個n-ary(每個節點最多n個子樹)的樹根。 請返回後序拜訪這棵樹的軌跡。 推廣後的後序拜訪的定義: 1.從左到右依序拜訪所有子樹。 2.拜訪目前的節點。
#
python
#
leetcode
#
algorithm
7
3
小松鼠
2024/08/25
🎄圖論應用: 二元樹的後序拜訪 Binary Tree Postorder Traversal_LC #145
題目敘述 145. Binary Tree Postorder Traversal 題目給定一個二元樹的根結點。 請輸出後序拜訪(Post-order traversal)的拜訪序列。 後序拜訪的定義: 1.拜訪左子樹。 2.拜訪右子樹。 3.拜訪目前的節點。
#
python
#
leetcode
#
algorithm
9
7
小松鼠
2024/08/25
🎄圖論應用: 二元樹的後序拜訪 Binary Tree Postorder Traversal_LC #145
題目敘述 145. Binary Tree Postorder Traversal 題目給定一個二元樹的根結點。 請輸出後序拜訪(Post-order traversal)的拜訪序列。 後序拜訪的定義: 1.拜訪左子樹。 2.拜訪右子樹。 3.拜訪目前的節點。
#
python
#
leetcode
#
algorithm
9
7
小松鼠
2024/08/07
遞迴應用: 把 數字 轉成 英文表示法 Integer to English Words_Leetcode #273
題目敘述 Integer to English Words 給定一個整數num 請轉換成對應的的英文數字表達(One, Two, Three, ... 那種數字表達式)
#
python
#
leetcode
#
algorithm
10
1
小松鼠
2024/08/07
遞迴應用: 把 數字 轉成 英文表示法 Integer to English Words_Leetcode #273
題目敘述 Integer to English Words 給定一個整數num 請轉換成對應的的英文數字表達(One, Two, Three, ... 那種數字表達式)
#
python
#
leetcode
#
algorithm
10
1
小松鼠
2024/07/04
串列應用: 合併非零的節點 Merge Nodes in Between Zeros_Leetcode #2181
題目敘述 Merge Nodes in Between Zeros 給定一個鏈結串列,合併非零區間的節點(以加總的方式合併),輸出合併後的鏈結串列。
#
python
#
leetcode
#
algorithm
15
小松鼠
2024/07/04
串列應用: 合併非零的節點 Merge Nodes in Between Zeros_Leetcode #2181
題目敘述 Merge Nodes in Between Zeros 給定一個鏈結串列,合併非零區間的節點(以加總的方式合併),輸出合併後的鏈結串列。
#
python
#
leetcode
#
algorithm
15
小松鼠
2024/06/29
圖論:找出每個節點的祖先 All Ancestors of a Node in a DAG_Leetcode #2192
題目敘述 All Ancestors of a Node in a Directed Acyclic Graph 給定一個有向無環圖,請找出每個點的祖先,以陣列的形式返回答案。
#
python
#
leetcode
#
algorithm
15
3
小松鼠
2024/06/29
圖論:找出每個節點的祖先 All Ancestors of a Node in a DAG_Leetcode #2192
題目敘述 All Ancestors of a Node in a Directed Acyclic Graph 給定一個有向無環圖,請找出每個點的祖先,以陣列的形式返回答案。
#
python
#
leetcode
#
algorithm
15
3
小松鼠
2024/05/24
拼字遊戲 拼出最高分的單字組合 (DFS回溯法應用) Leetcode #1255
知道如何從一組給定的英文字母和單字庫中的單字拼出最高分的單字組合。使用DFS + 回溯法 + 剪枝優化的演算法,詳細分析瞭如何展開所有可能的路徑,並且找出符合條件的狀態,協助讀者理解演算法背後的思維和方法。
#
leetcode
#
python
#
algorithm
9
5
小松鼠
2024/05/24
拼字遊戲 拼出最高分的單字組合 (DFS回溯法應用) Leetcode #1255
知道如何從一組給定的英文字母和單字庫中的單字拼出最高分的單字組合。使用DFS + 回溯法 + 剪枝優化的演算法,詳細分析瞭如何展開所有可能的路徑,並且找出符合條件的狀態,協助讀者理解演算法背後的思維和方法。
#
leetcode
#
python
#
algorithm
9
5
小松鼠
2024/05/19
人人有獎 在二元樹中分配硬幣(圖論應用) Leetcode #979
題目敘述 題目給定一棵二元樹,整棵樹剛好有n個節點 和 總共n枚金幣。 每個節點的值代表該節點初始擁有金幣的數量。 每回合可以給周圍的節點一枚金幣,請問最少需要幾回合才能讓所有節點恰好擁有一枚金幣? 原本的英文題目敘述
#
python
#
leetcode
#
algorithm
12
3
小松鼠
2024/05/19
人人有獎 在二元樹中分配硬幣(圖論應用) Leetcode #979
題目敘述 題目給定一棵二元樹,整棵樹剛好有n個節點 和 總共n枚金幣。 每個節點的值代表該節點初始擁有金幣的數量。 每回合可以給周圍的節點一枚金幣,請問最少需要幾回合才能讓所有節點恰好擁有一枚金幣? 原本的英文題目敘述
#
python
#
leetcode
#
algorithm
12
3
小松鼠
2024/05/17
微計算機 布林代數的二元樹_Leetcode #2331
題目給定一個布林代數的二元樹,要求我們計算最後的結果。 葉子節點都是真假值 非葉子節點都是布林運算子
#
python
#
algorithm
#
leetcode
13
5
小松鼠
2024/05/17
微計算機 布林代數的二元樹_Leetcode #2331
題目給定一個布林代數的二元樹,要求我們計算最後的結果。 葉子節點都是真假值 非葉子節點都是布林運算子
#
python
#
algorithm
#
leetcode
13
5
小松鼠
2024/05/14
尋寶之旅 挖掘最多金礦的走法 (DFS+最佳化)Leetcode #1219
這篇文章討論了從二維整數陣列中挖掘金礦的問題。文章使用DFS模擬N4走法來解決問題,並提供了時間複雜度和空間複雜度的分析。這將有助於瞭解如何從地圖中挖取最多金礦。文章中提到了相關的關鍵知識點和參考資料。
#
python
#
leetcode
#
algorithm
17
1
小松鼠
2024/05/14
尋寶之旅 挖掘最多金礦的走法 (DFS+最佳化)Leetcode #1219
這篇文章討論了從二維整數陣列中挖掘金礦的問題。文章使用DFS模擬N4走法來解決問題,並提供了時間複雜度和空間複雜度的分析。這將有助於瞭解如何從地圖中挖取最多金礦。文章中提到了相關的關鍵知識點和參考資料。
#
python
#
leetcode
#
algorithm
17
1
小松鼠
2024/05/06
嵌套娃娃 用遞迴解 串列化簡題 Leetcode #2487
題目敘述 輸入給定一個鏈結串列的head node。 要求我們進行化簡,只要某個節點的右手邊存在比較大的節點,就刪除掉。 例如 5->2->13->3 5的右手邊有13,所以5刪除掉。 2的右手邊有13,所以2刪除掉。 13的右手邊沒有更大的節點,所以13留著。 3的右手邊沒有更大
#
python
#
leetcode
#
algorithm
12
小松鼠
2024/05/06
嵌套娃娃 用遞迴解 串列化簡題 Leetcode #2487
題目敘述 輸入給定一個鏈結串列的head node。 要求我們進行化簡,只要某個節點的右手邊存在比較大的節點,就刪除掉。 例如 5->2->13->3 5的右手邊有13,所以5刪除掉。 2的右手邊有13,所以2刪除掉。 13的右手邊沒有更大的節點,所以13留著。 3的右手邊沒有更大
#
python
#
leetcode
#
algorithm
12
小松鼠
2024/04/22
一魚多吃: 從不同方法確認 兩點之間的路徑存在與否
今天的一魚三吃系列是透過 兩點之間是否存在一條路徑的題目,來回顧以前學過的DFS、BFS和Disjoint Set,鞏固圖論演算法的知識點。 英文的題目敘述在這裡 題目敘述 給定我們已知n個節點的圖,和圖上的每一條無向邊edges。 請問給定的起點start和終點end是否存在一條路徑可
#
python
#
leetcode
#
algorithm
9
小松鼠
2024/04/22
一魚多吃: 從不同方法確認 兩點之間的路徑存在與否
今天的一魚三吃系列是透過 兩點之間是否存在一條路徑的題目,來回顧以前學過的DFS、BFS和Disjoint Set,鞏固圖論演算法的知識點。 英文的題目敘述在這裡 題目敘述 給定我們已知n個節點的圖,和圖上的每一條無向邊edges。 請問給定的起點start和終點end是否存在一條路徑可
#
python
#
leetcode
#
algorithm
9
小松鼠
2024/04/19
一魚多吃: 從 島嶼周長 理解 圖論演算法的本質
今天的官方每日一題是Island Perimeter島嶼周長,很有趣的一題。 題目非常直觀好懂。也很適合拿來作為多角度複習、回顧圖論演算法的好題目。 英文的題目敘述在這裡 題目敘述 題目會給我們一個二維陣列當作地圖,格子點為1代表陸地,格子點為0代表海洋。 要求我們以四連通N4的方式拜訪
#
python
#
leetcode
#
algorithm
11
小松鼠
2024/04/19
一魚多吃: 從 島嶼周長 理解 圖論演算法的本質
今天的官方每日一題是Island Perimeter島嶼周長,很有趣的一題。 題目非常直觀好懂。也很適合拿來作為多角度複習、回顧圖論演算法的好題目。 英文的題目敘述在這裡 題目敘述 題目會給我們一個二維陣列當作地圖,格子點為1代表陸地,格子點為0代表海洋。 要求我們以四連通N4的方式拜訪
#
python
#
leetcode
#
algorithm
11
小松鼠
2024/04/16
DFS應用: 在二元樹插入新的一層 Add one row to Tree_Leetcode #623
題目敘述 題目會給定一顆二元樹的根結點, 要求我們在指定的層樹d,插入新的一層,節點值為v。 原本的左、右子樹,就成為新的那一層的左子樹、右子樹。 題目的原文敘述 測試範例 Example 1: Input: root = [4,2,6,3,1,5], val = 1, depth =
#
leetcode
#
python
#
algorithm
10
4
小松鼠
2024/04/16
DFS應用: 在二元樹插入新的一層 Add one row to Tree_Leetcode #623
題目敘述 題目會給定一顆二元樹的根結點, 要求我們在指定的層樹d,插入新的一層,節點值為v。 原本的左、右子樹,就成為新的那一層的左子樹、右子樹。 題目的原文敘述 測試範例 Example 1: Input: root = [4,2,6,3,1,5], val = 1, depth =
#
leetcode
#
python
#
algorithm
10
4
小松鼠
2024/04/04
合縱連橫: 從 路徑搜索 理解DFS背後的本質
這篇文章,會帶著大家複習以前學過的DFS框架, 並且以圖論的應用題與概念為核心, 貫穿一些相關聯的題目,透過框架複現來幫助讀者理解這個演算法框架。 DFS 深度優先搜索框架 def dfs( parameter ): # 邊界條件 if base case or stop cond
#
python
#
leetcode
#
algorithm
6
2
小松鼠
2024/04/04
合縱連橫: 從 路徑搜索 理解DFS背後的本質
這篇文章,會帶著大家複習以前學過的DFS框架, 並且以圖論的應用題與概念為核心, 貫穿一些相關聯的題目,透過框架複現來幫助讀者理解這個演算法框架。 DFS 深度優先搜索框架 def dfs( parameter ): # 邊界條件 if base case or stop cond
#
python
#
leetcode
#
algorithm
6
2
小松鼠
2024/02/28
圖論應用: 找出二元樹最後一層最左邊的值 Bottom Left Tree Value_Leetcode #513
題目敘述 題目會給定一棵二元樹的根結點,要求我們找出這棵二元樹最後一層最左邊的值。 題目的原文敘述 測試範例 Example 1: Input: root = [2,1,3] Output: 1 Example 2: Input: root = [1,2,3,4,null,5,6
#
python
#
leetcode
#
algorithm
7
小松鼠
2024/02/28
圖論應用: 找出二元樹最後一層最左邊的值 Bottom Left Tree Value_Leetcode #513
題目敘述 題目會給定一棵二元樹的根結點,要求我們找出這棵二元樹最後一層最左邊的值。 題目的原文敘述 測試範例 Example 1: Input: root = [2,1,3] Output: 1 Example 2: Input: root = [1,2,3,4,null,5,6
#
python
#
leetcode
#
algorithm
7
小松鼠
2024/01/29
圖論應用題: 樹的路徑總和 Path Sum_Leetcode #112
題目敘述 題目會給定一顆二元樹的根結點Root node,和指定的目標值targetSum。 問我們能不能從二元樹裡面找到一條從根結點到葉子結點的路徑,其路徑上的節點值總和恰好為targetSum? 可以的話,返回True。 無解的話,返回False。 題目的原文敘述 測試範例 E
#
python
#
leetcode
#
algorithm
6
小松鼠
2024/01/29
圖論應用題: 樹的路徑總和 Path Sum_Leetcode #112
題目敘述 題目會給定一顆二元樹的根結點Root node,和指定的目標值targetSum。 問我們能不能從二元樹裡面找到一條從根結點到葉子結點的路徑,其路徑上的節點值總和恰好為targetSum? 可以的話,返回True。 無解的話,返回False。 題目的原文敘述 測試範例 E
#
python
#
leetcode
#
algorithm
6